<?php require_once('connex.php');
ini_set("memory_limit",-1);

/**
* @package  auto_occasion
* @subpackage scripts
* @author
* @copyright 2012
*/

 /**
  * Import des données de l'ancienne base vers la nouvelle
  * Migrer et faire la concordance de toutes les données du site actuel vers la nouvelle release
  */


/**
 * Process : mettre l'ancienne et la nouvelle base sur le serveur
 * Se Connecter à l'ancienne et récupérer les données nécessaire
 * Se Connecter à la nouvelle base et inserer les données récupérées précédemment
 *
 */
// Configuration de la connexion à la base
class connect
{
    protected $hostDb;
    protected $userDb;
    protected $passDb;
    protected $baseDb;
    protected $link   = false ;

    /**
     * Constructeur
     * @param string $host
     * @param string $user
     * @param string $pass
     * @param string $db
     */ 
    function __construct ($host, $user = 'root', $pass = '', $db = 'auto_occasion') {
        $this->hostDb = $host;
        $this->userDb = $user;
        $this->passDb = $pass;
        $this->baseDb = $db;

        $this->link = mysql_connect($this->hostDb, $this->userDb, $this->passDb) or die ('Error connecting to mysql') ;
        mysql_select_db($this->baseDb, $this->link) ;
    }

}

/**
 * Récupère les requêtes utiles pour l'import
 */
class query 
{
    /**
     * requête de selection pour la table ao.occasion
     * @return string $query
     */
    public static function getQueryOccasion () {
        $query = " SELECT * FROM occasion ";
        return $query;
    }
    
	public static function prepareFileSql($query,&$zData) {
		
		$oRes		= mysql_query($query) ;
        $zData		= "" ;
		$iIndex		= 0 ;
		$tzValues	= array() ;
		$zQuery		= "" ;
		
        while ($oRow = mysql_fetch_array($oRes,MYSQL_ASSOC))  
		{
			if($iIndex==0){
				
				$zSeparator = "" ;
			
			}else{
				$zSeparator = "," ;
			
			}
			
			$zData.= $zSeparator . '('. implode(',',array_map('addQuote',$oRow) ) .")" ;

		    $iIndex++ ;
        }
		$zData.=";" ;
		$zQuery.=		"	INSERT INTO ao_voiture_occasion (  IdOccasion, 
                                                        Occas_Groupe, 
                                                        Occas_Marque, 
                                                        Occas_Modele,
                                                        Occas_Departement,
                                                        Occas_Carburation,
                                                        Occas_Partenaire,
                                                        Occas_Vendeur,
                                                        Occas_Version,
                                                        Occas_AutreMarque,
                                                        Occas_AutreModele,
                                                        Occas_Prix,
                                                        Occas_Adebattre,
                                                        Occas_Kilometrage,
                                                        Occas_Kilom_Moteur,
                                                        Occas_Bt_Vitesse,
                                                        Occas_ChevFisc,
                                                        Occas_NbPorte,
                                                        Occas_NumImmatricul,
                                                        Occas_Millesime,
                                                        Occas_MiseCirculation,
                                                        Occas_Pays,
                                                        Occas_Premieremain,
                                                        Occas_CT,
                                                        Occas_Garantie,
                                                        Occas_Couleur,
                                                        Occas_Coul_Metal,
                                                        Occas_Equip,
                                                        Occas_Commentaire,
                                                        Occas_Reference,
                                                        Occas_Valide,
                                                        Occas_DateSaisie,
                                                        Occas_DateModif,
                                                        Occas_DateEnLigne,
                                                        Occas_DateDerAdmin,
                                                        Occas_ImportTime,
                                                        Occas_ImportAction,
                                                        Occas_AffPart,
                                                        Occas_Option_TypAnn,
                                                        Occas_Option_Image,
                                                        Occas_Fimage,
                                                        Occas_MagValid,
                                                        Occas_Option_Texte,
                                                        Occas_Opt_Parution,
                                                        Occas_Montantpaye,
                                                        Occas_TypePaiement,
                                                        Occas_Estpaye,
                                                        Occas_EstModifier,
                                                        Occas_Estsaisie,
                                                        Occas_IDpartenaire,
                                                        Occas_IDorigine,
                                                        Occas_Bonus,
                                                        Occas_Vendeur_Pro,
                                                        Occas_VP_Commercial
                                                      ) VALUES  $zData
					";
		//Creation du fichier sql contenant la requete
		$file = fopen('occasion.sql', "w+");
		fwrite($file, $zQuery);
		fclose($file);

		return $zQuery ;
	
	}

	function addQuote ($zString) {

		return "'" . $zString . "'" ;
	
	}
 
}


try {
    // Récupération des données de l'ancienne base
    // Table : ao.occasion 
    $connect			= mysql_connect($host, $user, $pass);
    mysql_select_db($oldDb, $connect);
    $queryOccasion		= query::getQueryOccasion();
	$zQuery				=  "" ;
	$zData				=  "" ;
	$zQuery				= query::prepareFileSql($queryOccasion,$zData) ;
    mysql_close();

    echo 'ao_voiture_occasion : OK';
} catch (exception $e) {
    echo 'ao_voiture_occasion : KO';

    die($e->getMessage());
}



?>